package com.erp.erp_servers.warehouse.imp;

import com.erp.erp_dao.warehouse.IInitStockDao;
import com.erp.erp_entitys.warehouse.entity.InitStockEntity;
import com.erp.erp_entitys.warehouse.req.InitStatisticsInfoReq;
import com.erp.erp_entitys.warehouse.req.InitStockListReq;
import com.erp.erp_entitys.warehouse.rsp.InitStatisticsInfoRsp;
import com.erp.erp_entitys.warehouse.rsp.InitStockListRsp;
import com.erp.erp_servers.warehouse.IInitStockService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * @ClassName : InitStockServiceImp
 * @Description : 初始化库存实现类
 * @Author : lst
 * @Date: 2020-07-22 13:33
 */
@Service
public class InitStockServiceImp implements IInitStockService {

    /**
     * 初始化库存接口
     */
    private final IInitStockDao initStockDao;

    @Autowired
    public InitStockServiceImp(IInitStockDao initStockDao) {
        this.initStockDao = initStockDao;
    }

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    @Override
    public InitStockEntity queryById(Integer id) {
        return initStockDao.queryById(id);
    }


    /**
     * 通过实体作为筛选条件查询
     *
     * @param initStock 实例对象
     * @return 对象列表
     */
    @Override
    public List<InitStockEntity> queryAll(InitStockEntity initStock) {
        return initStockDao.queryAll(initStock);
    }

    /**
     * 获取初始化集合
     * @param req 查询参数
     * @return 查询结果
     */
    @Override
    public List<InitStockListRsp> getListByQuery(InitStockListReq req) {
        return initStockDao.getListByQuery(req);
    }

    /**
     * 初始化库存新增
     * @param initStock 实例对象
     * @return 影响行数
     */
    @Override
    public int insert(InitStockEntity initStock) {
        return initStockDao.insert(initStock);
    }


    /**
     * 修改数据
     *
     * @param initStock 实例对象
     * @return 影响行数
     */
    @Override
    public int update(InitStockEntity initStock) {
        return initStockDao.update(initStock);
    }

    /**
     * 初始化统计
     * @param req 实例对象
     * @return 初始化统计
     */
    @Override
    public List<InitStatisticsInfoRsp> getInitStatisticsInfo(InitStatisticsInfoReq req) {
        return initStockDao.getInitStatisticsInfo(req);
    }
}
